package controller;

import DAO.TipoIntegracaoDAO;
import java.io.Serializable;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import model.TipoIntegracao;

@ManagedBean(name = "tipoIntegracaoController")
@ViewScoped
public class TipoIntegracaoController implements Serializable {
    private List<TipoIntegracao> listTipoIntegracao;
    private TipoIntegracao selectedTipoIntegracao;
    private int selectedIndex;

    public TipoIntegracaoController()
    {
        this.listTipoIntegracao = TipoIntegracaoDAO.select();
    }
    
    public List<TipoIntegracao> getListTipoIntegracao() {
        return listTipoIntegracao;
    }

    public void setListTipoIntegracao(List<TipoIntegracao> listTipoIntegracao) {
        this.listTipoIntegracao = listTipoIntegracao;
    }

    public TipoIntegracao getSelectedTipoIntegracao() {
        return selectedTipoIntegracao;
    }

    public void setSelectedTipoIntegracao(TipoIntegracao selectedTipoIntegracao) {
        this.selectedTipoIntegracao = selectedTipoIntegracao;
    }
    
    public int getSelectedIndex() {
        return selectedIndex;
    }

    public void setSelectedIndex(int selectedIndex) {
        this.selectedIndex = selectedIndex;
    }
    
    public void inserir()
    {
        if (TipoIntegracaoDAO.insert(getSelectedTipoIntegracao()))
        {
            getListTipoIntegracao().add(getSelectedTipoIntegracao());
        }
    }
    
    public void alterar()
    {
        if (TipoIntegracaoDAO.update(getSelectedTipoIntegracao()))
        {
            getListTipoIntegracao().set(getSelectedIndex(), getSelectedTipoIntegracao());
        }
    }
    
    public void excluir()
    {
        if (TipoIntegracaoDAO.delete(getSelectedTipoIntegracao()))
        {
            getListTipoIntegracao().remove(getSelectedTipoIntegracao());
        }
    }
}
